package org.jeecg.modules.business.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
 * @author:Gan Linghao
 * @date:2020/7/14 0014
 * @time:16:36
 * @description:no description
 */
@TableName(value = "iot_watermeter")
public class IotWatermeter implements Serializable {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.INPUT)
    private Long id;

    /**
     * 小区id

     */
    @TableField(value = "district_id")
    private Long districtId;

    /**
     * 楼栋id
     */
    @TableField(value = "building_id")
    private Long buildingId;

    /**
     * 用户（iot_resident表的主键）
     */
    @TableField(value = "resident_id")
    private Long residentId;

    /**
     * 厂商（iot_manufacturer表的主键）
     */
    @TableField(value = "manufacturer_id")
    private Long manufacturerId;

    /**
     * 表地址码，表编号，用于抄表时作为表识别码
     */
    @TableField(value = "identification_code")
    private String identificationCode;

    /**
     * 表身码，表钢印号
     */
    @TableField(value = "steel_seal_number")
    private String steelSealNumber;

    /**
     * 1-蓝牙、2-红外、3-GPRS、4-LORA、5-NB-IOT、6-超声波、9-其他
     */
    @TableField(value = "communication_type")
    private Integer communicationType;

    /**
     * 设备型号
     */
    @TableField(value = "model")
    private String model;

    /**
     * 表设备类型，1-卡表，2-无线远传水表，3-GPRS物联网水表，4-直读远传水表，5-脉冲水表，6-光电直读, 9-其他

     */
    @TableField(value = "reading_type")
    private Integer readingType;

    /**
     * 计量口径(DN)，表口径大小:DN15,DN20等
     */
    @TableField(value = "measuring_caliber")
    private String measuringCaliber;

    /**
     * 是否远传水表，0-否、1-是

     */
    @TableField(value = "remote_flag")
    private Byte remoteFlag;

    /**
     * 安装日期
     */
    @TableField(value = "installed_date")
    private Date installedDate;

    /**
     * 安装位置，安装地理位置信息

     */
    @TableField(value = "installed_location")
    private String installedLocation;

    /**
     * 安装经度
     */
    @TableField(value = "installed_lng")
    private BigDecimal installedLng;

    /**
     * 安装纬度
     */
    @TableField(value = "installed_lat")
    private BigDecimal installedLat;

    /**
     * 1-正常，2-停水，
     3-销户,9-其他
     */
    @TableField(value = "water_status")
    private Integer waterStatus;

    /**
     * 用途分类：1-商业用表；2-小区总表；3-楼栋表；4-户表；9-其他
     */
    @TableField(value = "use_flag")
    private Integer useFlag;

    /**
     * 水表初始读数
     */
    @TableField(value = "initial_value")
    private BigDecimal initialValue;

    /**
     * 备注
     */
    @TableField(value = "remark")
    private String remark;

    @TableField(value = "create_time")
    private Date createTime;

    @TableField(value = "update_time")
    private Date updateTime;
    /**
     * 水表远传号
     */
    private String remoteNumber;
    /**
     * 最新抄见值
     */
    private BigDecimal latestValue;
    /**
     * 最新抄见时间
     */
    private Date latestTime;

    /**
     * 最新抄表人
     */
    private Long latestReadingBy;

    private static final long serialVersionUID = 1L;

    /**
     * 获取主键
     *
     * @return id - 主键
     */
    public Long getId() {
        return id;
    }

    /**
     * 设置主键
     *
     * @param id 主键
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取小区id

     *
     * @return district_id - 小区id

     */
    public Long getDistrictId() {
        return districtId;
    }

    /**
     * 设置小区id

     *
     * @param districtId 小区id

     */
    public void setDistrictId(Long districtId) {
        this.districtId = districtId;
    }

    /**
     * 获取楼栋id
     *
     * @return building_id - 楼栋id
     */
    public Long getBuildingId() {
        return buildingId;
    }

    /**
     * 设置楼栋id
     *
     * @param buildingId 楼栋id
     */
    public void setBuildingId(Long buildingId) {
        this.buildingId = buildingId;
    }

    /**
     * 获取用户（iot_resident表的主键）
     *
     * @return resident_id - 用户（iot_resident表的主键）
     */
    public Long getResidentId() {
        return residentId;
    }

    /**
     * 设置用户（iot_resident表的主键）
     *
     * @param residentId 用户（iot_resident表的主键）
     */
    public void setResidentId(Long residentId) {
        this.residentId = residentId;
    }

    /**
     * 获取厂商（iot_manufacturer表的主键）
     *
     * @return manufacturer_id - 厂商（iot_manufacturer表的主键）
     */
    public Long getManufacturerId() {
        return manufacturerId;
    }

    /**
     * 设置厂商（iot_manufacturer表的主键）
     *
     * @param manufacturerId 厂商（iot_manufacturer表的主键）
     */
    public void setManufacturerId(Long manufacturerId) {
        this.manufacturerId = manufacturerId;
    }

    /**
     * 获取表地址码，表编号，用于抄表时作为表识别码
     *
     * @return identification_code - 表地址码，表编号，用于抄表时作为表识别码
     */
    public String getIdentificationCode() {
        return identificationCode;
    }

    /**
     * 设置表地址码，表编号，用于抄表时作为表识别码
     *
     * @param identificationCode 表地址码，表编号，用于抄表时作为表识别码
     */
    public void setIdentificationCode(String identificationCode) {
        this.identificationCode = identificationCode;
    }

    /**
     * 获取表身码，表钢印号
     *
     * @return steel_seal_number - 表身码，表钢印号
     */
    public String getSteelSealNumber() {
        return steelSealNumber;
    }

    /**
     * 设置表身码，表钢印号
     *
     * @param steelSealNumber 表身码，表钢印号
     */
    public void setSteelSealNumber(String steelSealNumber) {
        this.steelSealNumber = steelSealNumber;
    }

    /**
     * 获取1-蓝牙、2-红外、3-GPRS、4-LORA、5-NB-IOT、6-超声波、9-其他
     *
     * @return communication_type - 1-蓝牙、2-红外、3-GPRS、4-LORA、5-NB-IOT、6-超声波、9-其他
     */
    public Integer getCommunicationType() {
        return communicationType;
    }

    /**
     * 设置1-蓝牙、2-红外、3-GPRS、4-LORA、5-NB-IOT、6-超声波、9-其他
     *
     * @param communicationType 1-蓝牙、2-红外、3-GPRS、4-LORA、5-NB-IOT、6-超声波、9-其他
     */
    public void setCommunicationType(Integer communicationType) {
        this.communicationType = communicationType;
    }

    /**
     * 获取设备型号
     *
     * @return model - 设备型号
     */
    public String getModel() {
        return model;
    }

    /**
     * 设置设备型号
     *
     * @param model 设备型号
     */
    public void setModel(String model) {
        this.model = model;
    }

    /**
     * 获取表设备类型，1-卡表，2-无线远传水表，3-GPRS物联网水表，4-直读远传水表，5-脉冲水表，6-光电直读, 9-其他

     *
     * @return reading_type - 表设备类型，1-卡表，2-无线远传水表，3-GPRS物联网水表，4-直读远传水表，5-脉冲水表，6-光电直读, 9-其他

     */
    public Integer getReadingType() {
        return readingType;
    }

    /**
     * 设置表设备类型，1-卡表，2-无线远传水表，3-GPRS物联网水表，4-直读远传水表，5-脉冲水表，6-光电直读, 9-其他

     *
     * @param readingType 表设备类型，1-卡表，2-无线远传水表，3-GPRS物联网水表，4-直读远传水表，5-脉冲水表，6-光电直读, 9-其他

     */
    public void setReadingType(Integer readingType) {
        this.readingType = readingType;
    }

    /**
     * 获取计量口径(DN)，表口径大小:DN15,DN20等
     *
     * @return measuring_caliber - 计量口径(DN)，表口径大小:DN15,DN20等
     */
    public String getMeasuringCaliber() {
        return measuringCaliber;
    }

    /**
     * 设置计量口径(DN)，表口径大小:DN15,DN20等
     *
     * @param measuringCaliber 计量口径(DN)，表口径大小:DN15,DN20等
     */
    public void setMeasuringCaliber(String measuringCaliber) {
        this.measuringCaliber = measuringCaliber;
    }

    /**
     * 获取是否远传水表，0-否、1-是

     *
     * @return remote_flag - 是否远传水表，0-否、1-是

     */
    public Byte getRemoteFlag() {
        return remoteFlag;
    }

    /**
     * 设置是否远传水表，0-否、1-是

     *
     * @param remoteFlag 是否远传水表，0-否、1-是

     */
    public void setRemoteFlag(Byte remoteFlag) {
        this.remoteFlag = remoteFlag;
    }

    /**
     * 获取安装日期
     *
     * @return installed_date - 安装日期
     */
    public Date getInstalledDate() {
        return installedDate;
    }

    /**
     * 设置安装日期
     *
     * @param installedDate 安装日期
     */
    public void setInstalledDate(Date installedDate) {
        this.installedDate = installedDate;
    }

    /**
     * 获取安装位置，安装地理位置信息

     *
     * @return installed_location - 安装位置，安装地理位置信息

     */
    public String getInstalledLocation() {
        return installedLocation;
    }

    /**
     * 设置安装位置，安装地理位置信息

     *
     * @param installedLocation 安装位置，安装地理位置信息

     */
    public void setInstalledLocation(String installedLocation) {
        this.installedLocation = installedLocation;
    }

    /**
     * 获取安装经度
     *
     * @return installed_lng - 安装经度
     */
    public BigDecimal getInstalledLng() {
        return installedLng;
    }

    /**
     * 设置安装经度
     *
     * @param installedLng 安装经度
     */
    public void setInstalledLng(BigDecimal installedLng) {
        this.installedLng = installedLng;
    }

    /**
     * 获取安装纬度
     *
     * @return installed_lat - 安装纬度
     */
    public BigDecimal getInstalledLat() {
        return installedLat;
    }

    /**
     * 设置安装纬度
     *
     * @param installedLat 安装纬度
     */
    public void setInstalledLat(BigDecimal installedLat) {
        this.installedLat = installedLat;
    }

    /**
     * 获取1-正常，2-停水，
     3-销户,9-其他
     *
     * @return water_status - 1-正常，2-停水，
    3-销户,9-其他
     */
    public Integer getWaterStatus() {
        return waterStatus;
    }

    /**
     * 设置1-正常，2-停水，
     3-销户,9-其他
     *
     * @param waterStatus 1-正常，2-停水，
    3-销户,9-其他
     */
    public void setWaterStatus(Integer waterStatus) {
        this.waterStatus = waterStatus;
    }

    /**
     * 获取用途分类：1-商业用表；2-小区总表；3-楼栋表；4-户表；9-其他
     *
     * @return use_flag - 用途分类：1-商业用表；2-小区总表；3-楼栋表；4-户表；9-其他
     */
    public Integer getUseFlag() {
        return useFlag;
    }

    /**
     * 设置用途分类：1-商业用表；2-小区总表；3-楼栋表；4-户表；9-其他
     *
     * @param useFlag 用途分类：1-商业用表；2-小区总表；3-楼栋表；4-户表；9-其他
     */
    public void setUseFlag(Integer useFlag) {
        this.useFlag = useFlag;
    }

    /**
     * 获取水表初始读数
     *
     * @return initial_value - 水表初始读数
     */
    public BigDecimal getInitialValue() {
        return initialValue;
    }

    /**
     * 设置水表初始读数
     *
     * @param initialValue 水表初始读数
     */
    public void setInitialValue(BigDecimal initialValue) {
        this.initialValue = initialValue;
    }

    /**
     * 获取备注
     *
     * @return remark - 备注
     */
    public String getRemark() {
        return remark;
    }

    /**
     * 设置备注
     *
     * @param remark 备注
     */
    public void setRemark(String remark) {
        this.remark = remark;
    }

    /**
     * @return create_time
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * @param createTime
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * @return update_time
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * @param updateTime
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getRemoteNumber() {
        return remoteNumber;
    }

    public void setRemoteNumber(String remoteNumber) {
        this.remoteNumber = remoteNumber;
    }

    public BigDecimal getLatestValue() {
        return latestValue;
    }

    public void setLatestValue(BigDecimal latestValue) {
        this.latestValue = latestValue;
    }

    public Date getLatestTime() {
        return latestTime;
    }

    public void setLatestTime(Date latestTime) {
        this.latestTime = latestTime;
    }

    public Long getLatestReadingBy() {
        return latestReadingBy;
    }

    public void setLatestReadingBy(Long latestReadingBy) {
        this.latestReadingBy = latestReadingBy;
    }
}
